-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: support BLS12-381 (based on bls12_381
crate)
#8
Conversation
Thanks for this! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Due to the necessity of some prime field traits on fp2
, request to at least put in the correct constants when possible. After that good to merge.
d539e90
to
a991c06
Compare
a991c06
to
921f1e0
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM after updating sha2 and digest import versions
Add curve BLS12-381. Targets
ff = "0.13.0"
.Sources:
The decision to copy implementation from
bls12_381
crate is explained by the numerous additional trait impls needed to be compatible withhalo2-lib
. See bellow.Additional changes
ff::PrimeField
for Fp, Scalar, Fp2.sqrt_ratio
.CurveAffine
andCurveAffineExt
for G1 and G2arithmetic.rs
funcs and aderive
module instead of https://github.com/privacy-scaling-explorations/bls12_381/blob/main/src/util.rs